TEMPLATE = lib
TARGET   = cvv.infrastructure.flowchart
QT      += core sql widgets xml
DEFINES  +=CVV_FLOWCHART_LIBRARY
CONFIG += c++14

header.files += *.h
header.path =$$PWD/../../cvvinfrastructure_build/includes/flowchart
INSTALLS += header

HEADERS += \
    AbstractBlock.h \
    AbstractQBlockFactory.h \
    IFBlock.h \
    ProcessBlock.h \
    QBlock.h \
    QFlowChart.h \
    QFlowChartStyle.h \
    QFlowEnum.h \
    QInsertionPoint.h \
    FlowChart_Global.h \
    OutputBlock.h \
    InputBlock.h \
    AlgorithmBlock.h \
    AssignBlock.h \
    PostloopBlock.h \
    PreloopBlock.h \
    ForBlock.h \
    ParallelBlock.h \
    SubFlowBlock.h

SOURCES += \
    AbstractBlock.cpp \
    AbstractQBlockFactory.cpp \
    IFBlock.cpp \
    ProcessBlock.cpp \
    QBlock.cpp \
    QFlowChart.cpp \
    QFlowChartStyle.cpp \
    OutputBlock.cpp \
    InputBlock.cpp \
    AlgorithmBlock.cpp \
    AssignBlock.cpp \
    PostloopBlock.cpp \
    PreloopBlock.cpp \
    ForBlock.cpp \
    ParallelBlock.cpp \
    SubFlowBlock.cpp


INCLUDEPATH += $$PWD/../../cvvision/cvv.entity
INCLUDEPATH += $$PWD/../cvv.extension_system
INCLUDEPATH += $$PWD/../cvv.interface
INCLUDEPATH += $$PWD/../cvv.interface/dtos


#配置输入路径
win32:mingw{
    INCLUDEPATH += $$PWD/../../cvvision/cvv.3rdparty/opencv4.5.4/include
    LIBS += $$PWD/../../cvvision/cvv.3rdparty/opencv4.5.4/lib/mingw64/libopencv_*.dll

    CONFIG(debug, debug|release){
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Debug/cvv.infrastructure.extension_system.dll
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Debug/cvv.infrastructure.utils.dll
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Debug/cvv.interface.dll
        LIBS += $$PWD/../../cvvision_build/lib/Debug/cvv.entity.dll

    }else{
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Release/cvv.infrastructure.extension_system.dll
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Release/cvv.infrastructure.utils.dll
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Release/cvv.interface.dll
        LIBS += $$PWD/../../cvvision_build/lib/Release/cvv.entity.dll
    }
}

win32:msvc{
    CONFIG(debug, debug|release){
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Debug/cvv.infrastructure.extension_system.lib
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Debug/cvv.infrastructure.utils.lib
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Debug/cvv.interface.lib
        LIBS += $$PWD/../../cvvision_build/lib/Debug/cvv.entity.lib

    }else{
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Release/cvv.infrastructure.extension_system.lib
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Release/cvv.infrastructure.utils.lib
        LIBS += $$PWD/../../cvvinfrastructure_build/lib/Release/cvv.interface.lib
        LIBS += $$PWD/../../cvvision_build/lib/Release/cvv.entity.lib
    }
}

linux{
    INCLUDEPATH += /opt/mais_trivision_depends/algorithm_depends/opencv4.5.4/include
    LIBS += /opt/mais_trivision_depends/algorithm_depends/opencv4.5.4/libs/libopencv*.so.4.5.4
    CONFIG(debug, debug|release){

    }else{

    }
}

#配置输出路径
CONFIG(debug, debug|release){
    DESTDIR =     $$PWD/../../cvvinfrastructure_build/lib/Debug
    MOC_DIR =     $$PWD/../../cvvinfrastructure_build/moc/Debug
    RCC_DIR =     $$PWD/../../cvvinfrastructure_build/rcc/Debug
    UI_DIR =      $$PWD/../../cvvinfrastructure_build/ui/Debug
    OBJECTS_DIR = $$PWD/../../cvvinfrastructure_build/obj/Debug
}else{
    DESTDIR =     $$PWD/../../cvvinfrastructure_build/lib/Release
    MOC_DIR =     $$PWD/../../cvvinfrastructure_build/moc/Release
    RCC_DIR =     $$PWD/../../cvvinfrastructure_build/rcc/Release
    UI_DIR =      $$PWD/../../cvvinfrastructure_build/ui/Release
    OBJECTS_DIR = $$PWD/../../cvvinfrastructure_build/obj/Release
}
